#include <d3d10.h>
#include <d3dx10.h>
#include "Application.h"

#pragma comment (lib, "d3dx10.lib")
#pragma comment (lib, "d3d10.lib")

class CAppDX10: public CApplication
{
    friend CApplication *CApplication::Create( int, int, API_VERSION );
private:
    /* Swap Chain & D3DDevice */
    IDXGISwapChain         *m_pSwapChain;
    ID3D10Device           *m_pD3DDevice;
    /* BackBuffer render target */
    ID3D10RenderTargetView *m_pBackBufferRTV;
    ID3DX10Font            *m_pFont;
    CAppDX10( int, int );

public:
    ~CAppDX10();
    static ID3D10Device *GetD3DDevice     ( );
    virtual void RenderScene              ( );
    virtual void RenderText               ( RECT rect, char *fmt, ... );
};